home *** CD-ROM | disk | FTP | other *** search
/ PC-Blue - MS DOS Public Domain Library / PC-Blue MS-DOS Public Domain Library - NYACC.iso / vol153 / keno.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1986-12-16  |  4.9 KB  |  138 lines

  1. 10  'PC KENO by Steve Schlich 9/84
  2. 20  GAME=1
  3. 30  DEFINT A-Z
  4. 40  CLEAR
  5. 50  CLS:KEY OFF
  6. 55  CLS: PRINT "Do you want instructions (Y/N)?";
  7. 56  B$=INKEY$: IF B$="" THEN 56
  8. 57  IF B$="Y" OR B$="y" THEN 9000
  9. 60  CLS:DIM ROW(100)
  10. 70  DIM COL(100)
  11. 80  DIM CHOSEN(100)
  12. 90  DIM PICKED(100)
  13. 100  DIM PICK(100)
  14. 105  GAME=1
  15. 110  COLOR 6,0
  16. 120  FOR C1=1 TO 71 STEP 10: ROW(C1)=16: NEXT C1
  17. 130  FOR C1=2 TO 72 STEP 10: ROW(C1)=21: NEXT C1
  18. 140  FOR C1=3 TO 73 STEP 10: ROW(C1)=26: NEXT C1
  19. 150  FOR C1=4 TO 74 STEP 10: ROW(C1)=31: NEXT C1
  20. 160  FOR C1=5 TO 75 STEP 10: ROW(C1)=36: NEXT C1
  21. 170  FOR C1=6 TO 76 STEP 10: ROW(C1)=41: NEXT C1
  22. 180  FOR C1=7 TO 77 STEP 10: ROW(C1)=46: NEXT C1
  23. 190  FOR C1=8 TO 78 STEP 10: ROW(C1)=51: NEXT C1
  24. 200  FOR C1=9 TO 79 STEP 10: ROW(C1)=56: NEXT C1
  25. 210  FOR C1=10 TO 80 STEP 10: ROW(C1)=61: NEXT C1
  26. 220  FOR C1=1 TO 10: COL(C1)=2 : NEXT C1
  27. 230  FOR C1=11 TO 20: COL(C1)=4 : NEXT C1
  28. 240  FOR C1=21 TO 30: COL(C1)=6 : NEXT C1
  29. 250  FOR C1=31 TO 40: COL(C1)=8 : NEXT C1
  30. 260  FOR C1=41 TO 50: COL(C1)=12: NEXT C1
  31. 270  FOR C1=51 TO 60: COL(C1)=14: NEXT C1
  32. 280  FOR C1=61 TO 70: COL(C1)=16: NEXT C1
  33. 290  FOR C1=71 TO 80: COL(C1)=18: NEXT C1
  34. 300  PRINT TAB(15)"KEYTHENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHENCLOSE"
  35. 310  PRINT TAB(15)"OPEN 1  OPEN 2  OPEN 3  OPEN 4  OPEN 5  OPEN 6  OPEN 7  OPEN 8  OPEN 9  OPEN 10 OPEN      GAME"
  36. 320  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE       1"
  37. 330  PRINT TAB(15)"OPEN 11 OPEN 12 OPEN 13 OPEN 14 OPEN 15 OPEN 16 OPEN 17 OPEN 18 OPEN 19 OPEN 20 OPEN"
  38. 340  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE"
  39. 350  PRINT TAB(15)"OPEN 21 OPEN 22 OPEN 23 OPEN 24 OPEN 25 OPEN 26 OPEN 27 OPEN 28 OPEN 29 OPEN 30 OPEN"
  40. 360  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE"
  41. 370  PRINT TAB(15)"OPEN 31 OPEN 32 OPEN 33 OPEN 34 OPEN 35 OPEN 36 OPEN 37 OPEN 38 OPEN 39 OPEN 40 OPEN"
  42. 380  PRINT TAB(15)"SCREENTHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOAD"
  43. 390  COLOR 4,0
  44. 400  PRINT TAB(15)"         * * *   P C   *   K E N O   * * *         "
  45. 410  COLOR 6,0
  46. 420  PRINT TAB(15)"KEYTHENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHEN<0xCB!>THENTHENTHENTHENCLOSE"
  47. 430  PRINT TAB(15)"OPEN 41 OPEN 42 OPEN 43 OPEN 44 OPEN 45 OPEN 46 OPEN 47 OPEN 48 OPEN 49 OPEN 50 OPEN"
  48. 440  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE"
  49. 450  PRINT TAB(15)"OPEN 51 OPEN 52 OPEN 53 OPEN 54 OPEN 55 OPEN 56 OPEN 57 OPEN 58 OPEN 59 OPEN 60 OPEN"
  50. 460  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE"
  51. 470  PRINT TAB(15)"OPEN 61 OPEN 62 OPEN 63 OPEN 64 OPEN 65 OPEN 66 OPEN 67 OPEN 68 OPEN 69 OPEN 70 OPEN"
  52. 480  PRINT TAB(15)"TOTHENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENTAB(THENTHENTHENTHENRANDOMIZE"
  53. 490  PRINT TAB(15)"OPEN 71 OPEN 72 OPEN 73 OPEN 74 OPEN 75 OPEN 76 OPEN 77 OPEN 78 OPEN 79 OPEN 80 OPEN"
  54. 500  PRINT TAB(15)"SCREENTHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOCATETHENTHENTHENTHENLOAD"
  55. 510  LOCATE 25,22: COLOR 0,3: PRINT " your spot ";: LOCATE 25,35: COLOR 0,7: PRINT " drawn spot ";: LOCATE 25,49: COLOR 16,5: PRINT " a match ";: COLOR 6,0
  56. 520  N=0: 'input the player's numbers
  57. 525  LOCATE 21,5:PRINT"                           ":LOCATE 21,5
  58. 530  INPUT "How many spots (1-11)";SPOTS
  59. 535  IF SPOTS<1 OR SPOTS>11 THEN 520
  60. 540  FOR D2=1 TO SPOTS
  61. 550  LOCATE 21,5: PRINT "                   Spot #";D2;
  62. 555  INPUT SPOT
  63. 560  LOCATE 21,30:PRINT"        "
  64. 565  IF SPOT<1 OR SPOT>80 THEN 550
  65. 570  C1=SPOT
  66. 580  PICK(C1)=1
  67. 590  PICKED(C1)=1
  68. 600  GOSUB 760
  69. 610  NEXT D2
  70. 620  'chose 20 numbers
  71. 630  T$=RIGHT$(TIME$,2)
  72. 640  T=VAL(T$)
  73. 650  RANDOMIZE T
  74. 660  FOR D1=1 TO 20
  75. 670  CHOICE=INT(RND*80)+1
  76. 680  IF CHOSEN(CHOICE)<>1 THEN 700
  77. 690  D1=D1-1: GOTO 740
  78. 700  CHOSEN(CHOICE)=1
  79. 710  C1=CHOICE
  80. 720  GOSUB 760
  81. 730  FOR J=1 TO 400: NEXT J
  82. 740  NEXT D1
  83. 750  GOTO 880
  84. 760  'subroutine to put number up on screen
  85. 765  LOCATE 21,16: PRINT "Drawing numbers...";
  86. 770  IF PICKED(C1)=1 THEN COLOR 0,3: 'player picked this spot
  87. 780  IF CHOSEN(C1)<>1 THEN 840: 'spot is one of the 20
  88. 790  IF PICK(C1)<>1 THEN 830: 'this spot is a winner
  89. 800  MATCHES=MATCHES+1: 'up the score
  90. 810  COLOR 16,5
  91. 820  GOTO 840
  92. 830  COLOR 0,7
  93. 840  LOCATE COL(C1),ROW(C1)
  94. 850  PRINT C1;
  95. 860  COLOR 6,0
  96. 870  RETURN
  97. 880  LOCATE 21,1: COLOR 4,0
  98. 890  PRINT "               Spots matched:";MATCHES;"       P=Play same";SPOTS;"spots again."
  99. 900  PRINT "               N=play New spots.       Q=Quit."
  100. 910  A$=INKEY$: IF A$="" THEN 910
  101. 920  IF A$="N" OR A$="n" THEN 930 ELSE 940
  102. 930  N=1: FOR C1=1 TO 80: PICK(C1)=0: PICKED(C1)=0: NEXT C1: GOTO 970
  103. 940  IF A$="P" OR A$="p" THEN 970
  104. 950  IF A$="Q" OR A$="q" THEN END
  105. 960  GOTO 910
  106. 970  ' clear board but retain player picks
  107. 980  MATCHES=0
  108. 990  LOCATE 21,16: PRINT"                                                   "
  109. 1000  LOCATE 22,16: PRINT"                                                   "
  110. 1010  FOR C2=1 TO 80
  111. 1020  CHOSEN(C2)=0
  112. 1030  IF PICK(C2)=1 THEN 1050
  113. 1040  COLOR 6,0: GOTO 1060
  114. 1050  COLOR 0,3
  115. 1060  LOCATE COL(C2),ROW(C2)
  116. 1070  PRINT C2
  117. 1075  COLOR 6,0
  118. 1080  NEXT C2
  119. 1082  GAME=GAME+1: LOCATE 3,72: PRINT GAME
  120. 1087  IF N=1 THEN 520
  121. 1090  GOTO 630
  122. 1100  END
  123. 9000  CLS: COLOR 6,0: 'instructions
  124. 9010  PRINT"KENO has the worst odds of any casino game.  The `house' (in this case,"
  125. 9020  PRINT"your computer) draws 20 random numbers from 1 to 80 for each game."
  126. 9030  PRINT"You try to guess ahead of time which numbers (spots) will come up."
  127. 9040  PRINT:PRINT"You pick from 1 to 11 spots, and bet that at least some of your picks"
  128. 9050  PRINT"will come up.  Your payoff (if there is one) depends on the ratio between"
  129. 9060  PRINT"how many spots you picked and how many came up during the game."
  130. 9070  PRINT:PRINT"At the end of each game, you have three options:"
  131. 9080  PRINT"P=Play the same spots again; N=play New spots; Q=Quit the game."
  132. 9090  PRINT"Press P or N or Q to answer."
  133. 9100  PRINT:PRINT"When picking your spots, type the number of each spot and press Return."
  134. 9110  PRINT"The `house' will begin drawing numbers as soon as your last spot is picked."
  135. 9120  PRINT:PRINT"GOOD LUCK!  Press any key to begin play...";
  136. 9130  B$=INKEY$: IF B$="" THEN 9130
  137. 9140  GOTO 60
  138.